<!doctype html><html><head><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1"><meta name=robots content="noodp"><meta http-equiv=x-ua-compatible content="IE=edge, chrome=1"><title>Git问题汇总 - Yulin Lewis' Blog</title><meta name=keywords content="雨临Lewis,Java,hugo,hexo,博客"><meta name=Description content="不想当写手的码农不是好咸鱼_(xз」∠)_"><meta property="og:title" content="Git问题汇总"><meta property="og:description" content="初次配置用户名和邮箱
Git在push时需要使用到user.name和user.email，一般通过命令来进行配置或修改。


 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11


//查看user.name
git config user.name

//查看user.email
git config user.email

//配置user.name
git config --global user.name &#34;your user name&#34;

//配置user.email
git config --global user.email &#34;your user email&#34;"><meta property="og:type" content="article"><meta property="og:url" content="https://lewky.cn/posts/git-issues/"><meta property="og:image" content="https://lewky.cn/logo.png"><meta property="article:published_time" content="2019-01-06T22:57:47+08:00"><meta property="article:modified_time" content="2021-12-28T22:57:47+08:00"><meta name=twitter:card content="summary_large_image"><meta name=twitter:image content="https://lewky.cn/logo.png"><meta name=twitter:title content="Git问题汇总"><meta name=twitter:description content="初次配置用户名和邮箱
Git在push时需要使用到user.name和user.email，一般通过命令来进行配置或修改。


 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11


//查看user.name
git config user.name

//查看user.email
git config user.email

//配置user.name
git config --global user.name &#34;your user name&#34;

//配置user.email
git config --global user.email &#34;your user email&#34;"><meta name=application-name content="雨临Lewis的博客"><meta name=apple-mobile-web-app-title content="雨临Lewis的博客"><meta name=theme-color content="#ffffff"><meta name=msapplication-TileColor content="#da532c"><link rel="shortcut icon" type=image/x-icon href=/favicon.ico><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=apple-touch-icon sizes=180x180 href=/apple-touch-icon.png><link rel=mask-icon href=/safari-pinned-tab.svg color=#5bbad5><link rel=manifest href=/site.webmanifest><link rel=canonical href=https://lewky.cn/posts/git-issues/><link rel=prev href=https://lewky.cn/posts/8dc44b45.html/><link rel=next href=https://lewky.cn/posts/f0ce18c5.html/><link rel=stylesheet href=https://cdn.jsdelivr.net/npm/normalize.css@8.0.1/normalize.min.css><link rel=stylesheet href=/css/style.min.css><link rel=stylesheet href=https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@5.13.0/css/all.min.css><link rel=stylesheet href=https://cdn.jsdelivr.net/npm/animate.css@3.7.2/animate.min.css><script type=application/ld+json>{"@context":"http://schema.org","@type":"BlogPosting","headline":"Git问题汇总","inLanguage":"","mainEntityOfPage":{"@type":"WebPage","@id":"https:\/\/lewky.cn\/posts\/git-issues\/"},"genre":"posts","keywords":"Git, 版本控制工具, 工作记录","wordcount":4588,"url":"https:\/\/lewky.cn\/posts\/git-issues\/","datePublished":"2019-01-06T22:57:47+08:00","dateModified":"2021-12-28T22:57:47+08:00","license":"This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.","publisher":{"@type":"Organization","name":"雨临Lewis","logo":"https:\/\/lewky.cn\/images\/avatar.jpg"},"author":{"@type":"Person","name":"雨临Lewis"},"description":""}</script></head><body header-desktop=fixed header-mobile=auto><script type=text/javascript>(window.localStorage&&localStorage.getItem('theme')?localStorage.getItem('theme')==='dark':('auto'==='auto'?window.matchMedia('(prefers-color-scheme: dark)').matches:'auto'==='dark'))&&document.body.setAttribute('theme','dark');</script><div id=mask></div><div class=wrapper><header class=desktop id=header-desktop><div class=header-wrapper><a href=https://github.com/lewky class=github-corner target=_blank title="Follow me on GitHub" aria-label="Follow me on GitHub"><svg width="3.5rem" height="3.5rem" viewBox="0 0 250 250" style="fill:#70b7fd;color:#fff;position:absolute;top:0;border:0;left:0;transform:scale(-1,1)" aria-hidden="true"><path d="M0 0 115 115h15l12 27L250 250V0z"/><path d="M128.3 109C113.8 99.7 119 89.6 119 89.6 122 82.7 120.5 78.6 120.5 78.6 119.2 72 123.4 76.3 123.4 76.3 127.3 80.9 125.5 87.3 125.5 87.3 122.9 97.6 130.6 101.9 134.4 103.2" fill="currentcolor" style="transform-origin:130px 106px" class="octo-arm"/><path d="M115 115C114.9 115.1 118.7 116.5 119.8 115.4L133.7 101.6C136.9 99.2 139.9 98.4 142.2 98.6 133.8 88 127.5 74.4 143.8 58 148.5 53.4 154 51.2 159.7 51 160.3 49.4 163.2 43.6 171.4 40.1 171.4 40.1 176.1 42.5 178.8 56.2 183.1 58.6 187.2 61.8 190.9 65.4 194.5 69 197.7 73.2 200.1 77.6 213.8 80.2 216.3 84.9 216.3 84.9 212.7 93.1 206.9 96 205.4 96.6 205.1 102.4 203 107.8 198.3 112.5 181.9 128.9 168.3 122.5 157.7 114.1 157.9 116.9 156.7 120.9 152.7 124.9L141 136.5C139.8 137.7 141.6 141.9 141.8 141.8z" fill="currentcolor" class="octo-body"/></svg></a><div class=header-title><a href=/ title="Yulin Lewis' Blog"><span class=header-title-pre><i class="fas fa-fw fa-atom"></i></span>雨临Lewis</a></div><div class=menu><div class=menu-inner><div class=dropdown><a href=/posts/ class="menu-item menu-more dropbtn" title=点击查看所有文章><i class="fas fa-fw fa-archive"></i>归档</a><div class="menu-more-content dropdown-content"><a href=/categories/><i class="fas fa-fw fa-th"></i>分类 </a><a href=/tags/><i class="fas fa-fw fa-tag"></i>标签 </a><a href=/hot/ title=文章热度Top15><i class="fas fa-fw fa-fire"></i>热度 </a><a href=/donation/ title=感谢打赏，老板大气~><i class="fas fa-fw fa-donate"></i>打赏 </a><a href=/about/><i class="fas fa-fw fa-at"></i>关于</a></div></div><a class=menu-item href=/friends/ title=欢迎申请友链><i class="fas fa-fw fa-link"></i>友链</a><div class=dropdown><a href=javascript:void(0); class="menu-item menu-more dropbtn" title=一些有意思的东东~><i class="fas fa-fw fa-fan fa-spin"></i>趣味</a><div class="menu-more-content dropdown-content"><a href=/funny/high/ title="前方高能♂ 小心外放！" target=_blank rel=noopener><i class="fas fa-fw fa-dizzy"></i>燥起来！ </a><a href=/funny/mikutap/ title=初音未来音乐游戏 target=_blank rel=noopener><i class="fas fa-fw fa-music"></i>在线打碟 </a><a href=/funny/catch-the-cat/ title=逮住那只猫!><i class="fas fa-fw fa-cat"></i>抓住猫咪</a></div></div><div class=dropdown><a href=/ class="menu-item menu-more dropbtn" title=回到首页><i class="fas fa-fw fa-atom"></i>站点</a><div class="menu-more-content dropdown-content"><a href=/bbs/ title=来留言吧~><i class="fas fa-fw fa-comment"></i>公告留言 </a><a href=https://seo.chinaz.com target=_blank rel=noopener><i class="fas fa-fw fa-chart-line"></i>SEO查询 </a><a href=https://www.ping.cn/http/lewky.cn target=_blank rel=noopener><i class="fas fa-fw fa-bezier-curve"></i>网站测速 </a><a href=/posts/e62c38c4.html/><i class="fas fa-fw fa-cog fa-spin"></i>建站日志</a></div></div><div class=dropdown><a href=javascript:void(0); class="menu-item menu-more dropbtn"><i class="fas fa-fw fa-book"></i>文档</a><div class="menu-more-content dropdown-content"><a href=https://gohugo.io/documentation/ target=_blank rel=noopener><i class="fas fa-fw fa-star"></i>Hugo文档 </a><a href=https://javanote.doc.lewky.cn/ title=尚在完善中~ target=_blank rel=noopener><i class="fab fa-fw fa-java"></i>Java 笔记</a></div></div><a class=menu-item href=/search/ title=渲染搜索结果需要等待几秒钟~><i class="fas fa-fw fa-search"></i>搜索
</a><span class="menu-item delimiter"></span><a href=https://travellings.link target=_blank class=menu-item rel=noopener title=开往-友链接力><i class="fas fa-fw fa-subway"></i></a><a href=https://rssblog.vercel.app/ class=menu-item target=_blank rel=noopener title=RSSBlog><i class="fas fa-fw fa-inbox"></i></a><a href=https://github.com/lewky class=menu-item target=_blank rel=noopener title=GitHub><i class="fab fa-fw fa-github"></i></a></div></div></div></header><header class=mobile id=header-mobile><div class=header-container><div class=header-wrapper><div class=header-title><a href=/ title="Yulin Lewis' Blog"><span class=header-title-pre><i class="fas fa-fw fa-atom"></i></span>雨临Lewis</a></div><div class=menu-toggle id=menu-toggle-mobile><span></span><span></span><span></span></div></div><div class=menu id=menu-mobile><div class=dropdown><a href=/posts/ class="menu-item menu-more dropbtn" title=点击查看所有文章><i class="fas fa-fw fa-archive"></i>归档</a><div class="menu-more-content dropdown-content"><a href=/categories/><i class="fas fa-fw fa-th"></i>分类 </a><a href=/tags/><i class="fas fa-fw fa-tag"></i>标签 </a><a href=/hot/ title=文章热度Top15><i class="fas fa-fw fa-fire"></i>热度 </a><a href=/donation/ title=感谢打赏，老板大气~><i class="fas fa-fw fa-donate"></i>打赏 </a><a href=/about/><i class="fas fa-fw fa-at"></i>关于</a></div></div><a class=menu-item href=/friends/ title=欢迎申请友链><i class="fas fa-fw fa-link"></i>友链</a><div class=dropdown><a href=javascript:void(0); class="menu-item menu-more dropbtn" title=一些有意思的东东~><i class="fas fa-fw fa-fan fa-spin"></i>趣味</a><div class="menu-more-content dropdown-content"><a href=/funny/high/ title="前方高能♂ 小心外放！" target=_blank rel=noopener><i class="fas fa-fw fa-dizzy"></i>燥起来！ </a><a href=/funny/mikutap/ title=初音未来音乐游戏 target=_blank rel=noopener><i class="fas fa-fw fa-music"></i>在线打碟 </a><a href=/funny/catch-the-cat/ title=逮住那只猫!><i class="fas fa-fw fa-cat"></i>抓住猫咪</a></div></div><div class=dropdown><a href=/ class="menu-item menu-more dropbtn" title=回到首页><i class="fas fa-fw fa-atom"></i>站点</a><div class="menu-more-content dropdown-content"><a href=/bbs/ title=来留言吧~><i class="fas fa-fw fa-comment"></i>公告留言 </a><a href=https://seo.chinaz.com target=_blank rel=noopener><i class="fas fa-fw fa-chart-line"></i>SEO查询 </a><a href=https://www.ping.cn/http/lewky.cn target=_blank rel=noopener><i class="fas fa-fw fa-bezier-curve"></i>网站测速 </a><a href=/posts/e62c38c4.html/><i class="fas fa-fw fa-cog fa-spin"></i>建站日志</a></div></div><div class=dropdown><a href=javascript:void(0); class="menu-item menu-more dropbtn"><i class="fas fa-fw fa-book"></i>文档</a><div class="menu-more-content dropdown-content"><a href=https://gohugo.io/documentation/ target=_blank rel=noopener><i class="fas fa-fw fa-star"></i>Hugo文档 </a><a href=https://javanote.doc.lewky.cn/ title=尚在完善中~ target=_blank rel=noopener><i class="fab fa-fw fa-java"></i>Java 笔记</a></div></div><a class=menu-item href=/search/ title=渲染搜索结果需要等待几秒钟~><i class="fas fa-fw fa-search"></i>搜索</a>
<a href=https://travellings.link target=_blank class=menu-item rel=noopener title=开往-友链接力><i class="fas fa-fw fa-subway"></i></a><a href=https://rssblog.vercel.app/ class=menu-item target=_blank rel=noopener title=RSSBlog><i class="fas fa-fw fa-inbox"></i></a><a href=https://github.com/lewky class=menu-item target=_blank rel=noopener title=GitHub><i class="fab fa-fw fa-github"></i></a></div></div></header><div class="search-dropdown desktop"><div id=search-dropdown-desktop></div></div><div class="search-dropdown mobile"><div id=search-dropdown-mobile></div></div><main class=main><div class=container><div class=toc id=toc-auto><h2 class=toc-title>目录</h2><div class=toc-content id=toc-content-auto></div></div><article class="page single"><h1 class="single-title animated flipInX">Git问题汇总</h1><div class=post-meta><div class=post-meta-line><span class=post-author><a href=/ title=Author rel=author class=author><i class="fas fa-user-circle fa-fw"></i>雨临Lewis</a></span>&nbsp;<span class=post-category>收录于 <a href=/categories/%E7%89%88%E6%9C%AC%E6%8E%A7%E5%88%B6%E5%B7%A5%E5%85%B7/><i class="far fa-folder fa-fw"></i>版本控制工具</a></span></div><div class=post-meta-line><i class="far fa-calendar fa-fw"></i>&nbsp;<time datetime=2019-01-06>2019-01-06</time>&nbsp;<i class="far fa-calendar-plus fa-fw"></i>&nbsp;<time datetime=2021-12-28>2021-12-28</time>&nbsp;<i class="fas fa-pencil-alt fa-fw"></i>&nbsp;约 4588 字
<i class="far fa-clock fa-fw"></i>&nbsp;预计阅读 10 分钟&nbsp;<span id=/posts/git-issues/ class=leancloud_visitors data-flag-title=Git问题汇总>
<i class="far fa-eye fa-fw"></i>&nbsp;<span class=leancloud-visitors-count></span>&nbsp;次阅读
</span>&nbsp;
<a href=#comments id=post-meta-vcount title=查看评论><i class="fas fa-comment fa-fw"></i>&nbsp;<span id=/posts/git-issues/ class=waline-comment-count></span>&nbsp;条评论</a></div></div><div class="details toc" id=toc-static kept><div class="details-summary toc-title"><span>目录</span>
<span><i class="details-icon fas fa-angle-right"></i></span></div><div class="details-content toc-content" id=toc-content-static><nav id=TableOfContents><ol><li><a href=#初次配置用户名和邮箱>初次配置用户名和邮箱</a></li><li><a href=#修改usernameuseremail>修改user.name/user.email</a><ol><li><a href=#方式一通过命令修改>方式一：通过命令修改</a></li><li><a href=#方式二修改gitconfig文件>方式二：修改.gitconfig文件</a></li></ol></li><li><a href=#gitignore文件的作用><code>.gitignore</code>文件的作用</a></li><li><a href=#gitignore文件的语法><code>.gitignore</code>文件的语法</a><ol><li><a href=#注释>注释</a></li><li><a href=#忽略文件文件夹>忽略文件/文件夹</a></li><li><a href=#不忽略文件文件夹>不忽略文件/文件夹</a></li><li><a href=#在指定文件夹里不忽略指定的文件>在指定文件夹里不忽略指定的文件</a></li><li><a href=#使用通配符及其他符号>使用通配符及其他符号</a></li></ol></li><li><a href=#gitignore怎么忽略已经被版本控制的文件>.gitignore怎么忽略已经被版本控制的文件</a><ol><li><a href=#方法一>方法一</a></li><li><a href=#方法二>方法二</a></li><li><a href=#关于git-rm---cached-filename的补充>关于<code>git rm --cached filename</code>的补充</a></li></ol></li><li><a href=#git---merge-refusing-to-merge-unrelated-histories>Git - Merge: refusing to merge unrelated histories</a><ol><li><a href=#场景>场景</a></li><li><a href=#解决方案>解决方案</a></li></ol></li><li><a href=#warning-lf-will-be-replaced-by-crlf>warning: LF will be replaced by CRLF</a></li><li><a href=#统计代码提交行数>统计代码提交行数</a></li><li><a href=#git-reset---hard-head后显示more>git reset &ndash;hard HEAD^后显示more?</a></li><li><a href=#参考链接>参考链接</a></li></ol></nav></div></div><div class=content id=content><h2 id=初次配置用户名和邮箱>初次配置用户名和邮箱</h2><p>Git在push时需要使用到user.name和user.email，一般通过命令来进行配置或修改。</p><div class=highlight><div class=chroma><table class=lntable><tr><td class=lntd><pre class=chroma><code><span class=lnt> 1
</span><span class=lnt> 2
</span><span class=lnt> 3
</span><span class=lnt> 4
</span><span class=lnt> 5
</span><span class=lnt> 6
</span><span class=lnt> 7
</span><span class=lnt> 8
</span><span class=lnt> 9
</span><span class=lnt>10
</span><span class=lnt>11
</span></code></pre></td><td class=lntd><pre class=chroma><code class=language-fallback data-lang=fallback>//查看user.name
git config user.name

//查看user.email
git config user.email

//配置user.name
git config --global user.name &#34;your user name&#34;

//配置user.email
git config --global user.email &#34;your user email&#34;
</code></pre></td></tr></table></div></div><p>这里需要注意的是，<strong>配置命令只能用于初次配置user.name/email，如果不小心配置错误，或者重复配置，不可以通过重复执行以上命令来修改user.name/email，否则可能或报错说无法重复配置，或者导致一个key配置了多个value。</strong></p><h2 id=修改usernameuseremail>修改user.name/user.email</h2><p>如果想要修改已经配置过的user.name或email，有两种方式，一种是通过命令来修改；一种是直接修改.gitconfig文件。</p><h3 id=方式一通过命令修改>方式一：通过命令修改</h3><pre><code>//修改user.name
git config --global --replace-all user.name &quot;your user name&quot;

//修改user.email
git config --global --replace-all user.email&quot;your user email&quot;
</code></pre><h3 id=方式二修改gitconfig文件>方式二：修改.gitconfig文件</h3><ul><li>该文件是隐藏文件，位于<code>C:\Users\{user}\.gitconfig</code>，直接修改里边的name或者email，如果有重复的name或email，可以将其删掉，只剩下一个就好。</li><li>修改完，通过git bash输入git config &ndash;list可以查看是否修改成功了。</li></ul><h2 id=gitignore文件的作用><code>.gitignore</code>文件的作用</h2><p><code>.gitignore</code>文件用来忽略被指定的文件或文件夹的改动，被记录在<code>.gitignore</code>文件里的文件或文件夹，是无法被git跟踪到的，换句话说，被忽略的文件是不会被放入到远程仓库里的。</p><p>也就是说，如果文件已经存在于远程仓库中，是无法通过<code>.gitignore</code>文件来忽略的。</p><p><code>.gitignore</code>文件存放于git仓库的根目录下。</p><h2 id=gitignore文件的语法><code>.gitignore</code>文件的语法</h2><h3 id=注释>注释</h3><p><code>#</code>表示注释，如下：</p><div class=highlight><div class=chroma><table class=lntable><tr><td class=lntd><pre class=chroma><code><span class=lnt>1
</span></code></pre></td><td class=lntd><pre class=chroma><code class=language-text data-lang=text># Here is comment.
</code></pre></td></tr></table></div></div><h3 id=忽略文件文件夹>忽略文件/文件夹</h3><p>直接写入文件或文件夹名即可，指定文件夹里的所有文件也会一起被忽略，如下：</p><div class=highlight><div class=chroma><table class=lntable><tr><td class=lntd><pre class=chroma><code><span class=lnt>1
</span><span class=lnt>2
</span><span class=lnt>3
</span><span class=lnt>4
</span><span class=lnt>5
</span><span class=lnt>6
</span><span class=lnt>7
</span><span class=lnt>8
</span></code></pre></td><td class=lntd><pre class=chroma><code class=language-text data-lang=text># ignore target folder
target/

# ignore Eclipse files
.settings/
build/
.classpath
.project
</code></pre></td></tr></table></div></div><h3 id=不忽略文件文件夹>不忽略文件/文件夹</h3><p><code>!</code>表示不忽略指定的文件，如下：</p><div class=highlight><div class=chroma><table class=lntable><tr><td class=lntd><pre class=chroma><code><span class=lnt>1
</span><span class=lnt>2
</span></code></pre></td><td class=lntd><pre class=chroma><code class=language-text data-lang=text># don&#39;t ignore src folder
!src/
</code></pre></td></tr></table></div></div><h3 id=在指定文件夹里不忽略指定的文件>在指定文件夹里不忽略指定的文件</h3><p>通过<code>!</code>可以实现更加有意思的用法，如下：</p><div class=highlight><div class=chroma><table class=lntable><tr><td class=lntd><pre class=chroma><code><span class=lnt>1
</span><span class=lnt>2
</span><span class=lnt>3
</span></code></pre></td><td class=lntd><pre class=chroma><code class=language-text data-lang=text># ignore scaffolds folder, but don&#39;t ignore draft.md under scaffolds folder.
scaffolds/*
!scaffolds/draft.md
</code></pre></td></tr></table></div></div><p>**注意：这里必须在文件夹后面加上<code>/*</code>，否则是无法实现想要的效果的。并且被忽略的文件和想要不忽略的文件必须是同一路径，否则无法生效。**如下的写法就是不能生效的：</p><div class=highlight><div class=chroma><table class=lntable><tr><td class=lntd><pre class=chroma><code><span class=lnt>1
</span><span class=lnt>2
</span><span class=lnt>3
</span></code></pre></td><td class=lntd><pre class=chroma><code class=language-text data-lang=text># ignore scaffolds folder, but don&#39;t ignore draft.md under scaffolds folder.
scaffolds/*
!scaffolds/test/draft.md
</code></pre></td></tr></table></div></div><p>想要生效就要改成同一目录：</p><div class=highlight><div class=chroma><table class=lntable><tr><td class=lntd><pre class=chroma><code><span class=lnt>1
</span><span class=lnt>2
</span><span class=lnt>3
</span></code></pre></td><td class=lntd><pre class=chroma><code class=language-text data-lang=text># ignore scaffolds folder, but don&#39;t ignore draft.md under scaffolds folder.
scaffolds/test/*
!scaffolds/test/draft.md
</code></pre></td></tr></table></div></div><h3 id=使用通配符及其他符号>使用通配符及其他符号</h3><p>可以使用通配符及其他符号来指定复杂条件的文件，如下：</p><div class=highlight><div class=chroma><table class=lntable><tr><td class=lntd><pre class=chroma><code><span class=lnt>1
</span><span class=lnt>2
</span><span class=lnt>3
</span><span class=lnt>4
</span></code></pre></td><td class=lntd><pre class=chroma><code class=language-text data-lang=text>*.log
day_1?.txt
hello[0-9].txt
hi[^0-9].txt
</code></pre></td></tr></table></div></div><ul><li><code>*</code>表示匹配任意字符；</li><li><code>?</code>表示匹配一个字符；</li><li><code>[]</code>表示匹配中括号内的单个字符：<ul><li>可以使用<code>-</code>来表示连贯的字符，比如<code>0-9</code>，<code>a-z</code>，<code>A-Z</code>等，<code>[0-9]</code>表示匹配从0到9的单个字符。</li><li>可以使用<code>^</code>来表示除外，比如<code>[^0-9]</code>表示除0到9之外的单个字符。</li></ul></li></ul><h2 id=gitignore怎么忽略已经被版本控制的文件>.gitignore怎么忽略已经被版本控制的文件</h2><p>如果某个文件已经存在于远程仓库了，也就是说某个文件已经被版本控制了，如果将该文件添加到<code>.gitignore</code>中，是无法生效的。因为<code>.gitignore</code>是用来控制尚未被纳入版本控制的文件，如果文件已经存在于远程库中，自然也就无法生效了。</p><p>于是就此衍生了一个问题：<code>.gitignore</code>怎么忽略已经被版本控制的文件？</p><h3 id=方法一>方法一</h3><p>直接在远程库里将想要忽略的文件删除掉，再将该文件写入<code>.gitignore</code>中即可。</p><p><strong>这种做法的前提是，你确定该文件是允许从远程库删除掉的</strong>，然而有些时候，这种做法是不可能的。要么没权限去远程库删掉该文件，要么该文件是必须的。</p><h3 id=方法二>方法二</h3><p>使用命令<code>git rm --cached filename</code>，然后将该文件写入<code>.gitignore</code>中即可。</p><p>该命令表示从git仓库中将文件移除，不再进行版本控制，但保留工作区的该文件。</p><p>需要注意的是，该命令其实和方法一差不多。<code>git rm</code>表示移除某个文件，<code>--cached</code>表示从暂存区中移除，如果不加该参数就是直接从工作区移除了。</p><p>工作区就是指的Working Tree，暂存区就是指的Stage。工作区就是我们的磁盘，被版本控制的文件都存放于工作区。如果改动了某个文件，首先要将该文件添加到暂存区(Stage)，然后再提交(commit)到本地仓库，最后才推送(push)到远程库。</p><p><code>git rm --cached filename</code>并不会从物理上删除文件，只是从暂存区中将文件删除。由于该文件原本已经被版本控制了，使用了该命令后，虽然保留了工作区的该文件，但是却会在暂存区中生成一个删除了该文件的记录，如果此时进行commit，就会把版本库里的该文件给删掉了，如果push到远程库，也会被删掉。<strong>最终还是走的方法一的路子。</strong></p><h3 id=关于git-rm---cached-filename的补充>关于<code>git rm --cached filename</code>的补充</h3><p>看到有篇文章举例很详细，如下：</p><ul><li>新建文件1.txt，未被跟踪(Untracked files)，提交到暂存区(Changed to be committed)，未提交到版本库。 使用<code>git rm —cached 1.txt</code>：<ul><li>把文件恢复到未被跟踪的状态，即删除暂存区中的1.txt；</li></ul></li><li>文件1.txt，已经提交到版本库，工作区，暂存区都是干净的。使用<code>git rm —cached 1.txt</code>：<ul><li>把工作区的文件1.txt置为了”未跟踪”状态，即Untracked files</li><li>暂存区生成一个deleted 1.txt的记录，如果提交了，就是把版本库中的1.txt删除。</li><li>不影响工作区中的文件。</li></ul></li><li>文件1.txt, 已经提交到版本库，修改1.txt，并且提交到了暂存区。使用<code>git rm —cached 1.txt</code>：<ul><li>把工作区的文件1.txt置为了”未跟踪”状态，即Untracked files。 </li><li>暂存区生成一个deleted 1.txt的记录，如果提交了，就是把版本库中的1.txt删除。 </li><li>不影响工作区中的文件。还是修改后的1.txt</li></ul></li><li>文件1.txt, 已经提交到版本库，修改1.txt，提交到暂存区，继续修改1.txt。使用<code>git rm —cached 1.txt</code>  会报错，不能执行操作。</li></ul><h2 id=git---merge-refusing-to-merge-unrelated-histories>Git - Merge: refusing to merge unrelated histories</h2><h3 id=场景>场景</h3><p>我在本地有个代码仓库local-A，本地仓库local-A已经和一个远程仓库remote-A关联了。</p><p>接着我又在GitHub上新建了一个仓库remote-B，我希望将本地仓库local-A的本地dev分支push到这个新建的远程库remote-B。我的想法是这样的：</p><ol><li>在本地仓库local-A里添加刚刚新建的远程库remote-B</li><li>检出(check out)并切换到remote-B的master分支</li><li>将本地dev分支merge到当前的master分支</li><li>解决可能发生的冲突后，将改动全部commit并push到远程库remote-B的master分支上</li></ol><p>接着当我做到第三步的时候，发现报错如下：</p><div class=highlight><div class=chroma><table class=lntable><tr><td class=lntd><pre class=chroma><code><span class=lnt>1
</span></code></pre></td><td class=lntd><pre class=chroma><code class=language-fallback data-lang=fallback>Merge: refusing to merge unrelated histories
</code></pre></td></tr></table></div></div><p>看到报错，我又重新操作了一遍，依然是同样的错误。记得以前我也做过类似的操作，但是却没有现在的问题，百度了下，发现可能是git升级之后造成的。</p><h3 id=解决方案>解决方案</h3><p>因为两个仓库是不同的项目(本地仓库已经跟踪了另外一个远程库了)，git默认不允许不相干的项目进行push等操作。如果想要进行这些操作，就需要加入<code>--allow-unrelated-histories</code>参数才可以合并两个不同的项目：</p><div class=highlight><div class=chroma><table class=lntable><tr><td class=lntd><pre class=chroma><code><span class=lnt>1
</span></code></pre></td><td class=lntd><pre class=chroma><code class=language-fallback data-lang=fallback>git merge --squash dev --allow-unrelated-histories
</code></pre></td></tr></table></div></div><p>这句命令表示将<code>dev</code>分支合并到当前分支，这里的两个本地分支各自追踪不同的远程库，需要加入<code>--allow-unrelated-histories</code>参数才能够完成合并操作而不报错，至于<code>--squash</code>参数是为了压缩<code>dev</code>分支原本的commit历史，可以将原本所有的commit历史合成一个commit，以避免当前分支在合并之后掺入了其他项目的commit历史。</p><h2 id=warning-lf-will-be-replaced-by-crlf>warning: LF will be replaced by CRLF</h2><p>这个问题由不同平台的换行符不同所造成：</p><ul><li>CR是回车，CarriageReturn，即<code>\r</code>（return）。LF是换行，LineFeed，即<code>\n</code>（newline）。</li><li>Dos和Windows平台使用CRLF来结束一行。</li><li>Mac和Linux平台使用LF来结束一行。（最早Mac以CR来结束一行，后改为了LF）</li></ul><p><strong>影响：</strong></p><ul><li>Unix/Mac系统下的文件在Windows里打开，所有文字会变成一行。</li><li>Windows的文件在Unix/Mac下打开，在每行的结尾可能会多出一个<code>^M</code>符号。</li><li>Linux保存的文件在windows上用记事本查看会出现黑点。</li></ul><p><strong>解决方法：</strong></p><p>为了避免git管理的项目中出现混合的换行符，通常会将项目的换行符设置为<code>LF</code>。</p><p>对于Windows平台，git的客户端默认设置为<code>core.autocrlf=true</code>。在提交文件时，会自动将换行符转换为<code>LF</code>，在检出文件时则自动转为<code>CRLF</code>。</p><div class=highlight><div class=chroma><table class=lntable><tr><td class=lntd><pre class=chroma><code><span class=lnt>1
</span></code></pre></td><td class=lntd><pre class=chroma><code class=language-fallback data-lang=fallback>git config --global core.autocrlf true
</code></pre></td></tr></table></div></div><p>对于Mac和Linux平台，可以将配置设置为<code>input</code>。这样在提交文件时会转为<code>LF</code>，检出时则不转换。</p><div class=highlight><div class=chroma><table class=lntable><tr><td class=lntd><pre class=chroma><code><span class=lnt>1
</span></code></pre></td><td class=lntd><pre class=chroma><code class=language-fallback data-lang=fallback>git config --global core.autocrlf input
</code></pre></td></tr></table></div></div><p>如果只使用Windows平台进行开发并运行项目，可以设置为<code>false</code>，来取消git自动转换换行符的功能。</p><div class=highlight><div class=chroma><table class=lntable><tr><td class=lntd><pre class=chroma><code><span class=lnt>1
</span></code></pre></td><td class=lntd><pre class=chroma><code class=language-fallback data-lang=fallback>git config --global core.autocrlf false
</code></pre></td></tr></table></div></div><p>还可以配置<code>core.safecrlf</code>来改变git对于换行符的检查行为：</p><div class=highlight><div class=chroma><table class=lntable><tr><td class=lntd><pre class=chroma><code><span class=lnt>1
</span><span class=lnt>2
</span><span class=lnt>3
</span><span class=lnt>4
</span><span class=lnt>5
</span><span class=lnt>6
</span><span class=lnt>7
</span><span class=lnt>8
</span></code></pre></td><td class=lntd><pre class=chroma><code class=language-fallback data-lang=fallback>#拒绝提交包含混合换行符的文件
git config --global core.safecrlf true   

#允许提交包含混合换行符的文件
git config --global core.safecrlf false   

#提交包含混合换行符的文件时给出警告
git config --global core.safecrlf warn
</code></pre></td></tr></table></div></div><p>可以通过以下命令来查询Git的配置：</p><div class=highlight><div class=chroma><table class=lntable><tr><td class=lntd><pre class=chroma><code><span class=lnt>1
</span><span class=lnt>2
</span><span class=lnt>3
</span><span class=lnt>4
</span><span class=lnt>5
</span></code></pre></td><td class=lntd><pre class=chroma><code class=language-fallback data-lang=fallback>// 查询配置
git config -l

// 查询全局配置
git config -l  --global
</code></pre></td></tr></table></div></div><h2 id=统计代码提交行数>统计代码提交行数</h2><p>可以在<code>git bash</code>里用<code>git log</code>命令来统计，部分参数说明如下：</p><div class=highlight><div class=chroma><table class=lntable><tr><td class=lntd><pre class=chroma><code><span class=lnt> 1
</span><span class=lnt> 2
</span><span class=lnt> 3
</span><span class=lnt> 4
</span><span class=lnt> 5
</span><span class=lnt> 6
</span><span class=lnt> 7
</span><span class=lnt> 8
</span><span class=lnt> 9
</span><span class=lnt>10
</span><span class=lnt>11
</span><span class=lnt>12
</span></code></pre></td><td class=lntd><pre class=chroma><code class=language-fallback data-lang=fallback>--author   指定作者
--stat   显示每次更新的文件修改统计信息，会列出具体文件列表
--shortstat    统计每个commit 的文件修改行数，包括增加，删除，但不列出文件列表
--numstat   统计每个commit 的文件修改行数，包括增加，删除，并列出文件列表
--pretty 使用其他格式显示历史提交信息
--pretty=tformat	可以定制要显示的记录格式
--since, --after 仅显示指定时间之后的提交
--until, --before 仅显示指定时间之前的提交

-w 显示字数
-c 显示Bytes数
-l 显示行数
</code></pre></td></tr></table></div></div><p>统计某段时间内的提交：</p><div class=highlight><div class=chroma><table class=lntable><tr><td class=lntd><pre class=chroma><code><span class=lnt>1
</span></code></pre></td><td class=lntd><pre class=chroma><code class=language-fallback data-lang=fallback>git log --since ==2021-09-01 --until=2021-10-05 | wc -l
</code></pre></td></tr></table></div></div><p>统计当前用户的代码提交量，包括增加、删除：</p><div class=highlight><div class=chroma><table class=lntable><tr><td class=lntd><pre class=chroma><code><span class=lnt>1
</span></code></pre></td><td class=lntd><pre class=chroma><code class=language-fallback data-lang=fallback>git log --author=&#34;$(git config --get user.name)&#34; --pretty=tformat: --numstat | gawk &#39;{ add += $1 ; subs += $2 ; loc += $1 - $2 } END { printf &#34;added lines: %s removed lines : %s total lines: %s\n&#34;,add,subs,loc }&#39;
</code></pre></td></tr></table></div></div><p>统计仓库排名前五的提交：</p><div class=highlight><div class=chroma><table class=lntable><tr><td class=lntd><pre class=chroma><code><span class=lnt>1
</span><span class=lnt>2
</span><span class=lnt>3
</span><span class=lnt>4
</span></code></pre></td><td class=lntd><pre class=chroma><code class=language-fallback data-lang=fallback>git log --pretty=&#39;%aN&#39; | sort | uniq -c | sort -k1 -n -r | head -n 5

--按照邮箱来统计排名前五的提交（邮箱名不同，但是用户名可以相同）
git log --pretty=format:%ae | gawk -- &#39;{ ++c[$0]; } END { for(cc in c) printf &#34;%5d %s\n&#34;,c[cc],cc; }&#39; | sort -u -n -r | head -n 5
</code></pre></td></tr></table></div></div><p>贡献者统计：</p><div class=highlight><div class=chroma><table class=lntable><tr><td class=lntd><pre class=chroma><code><span class=lnt>1
</span></code></pre></td><td class=lntd><pre class=chroma><code class=language-fallback data-lang=fallback>git log --pretty=&#39;%aN&#39; | sort -u | wc -l
</code></pre></td></tr></table></div></div><p>提交数统计：</p><div class=highlight><div class=chroma><table class=lntable><tr><td class=lntd><pre class=chroma><code><span class=lnt>1
</span></code></pre></td><td class=lntd><pre class=chroma><code class=language-fallback data-lang=fallback>git log --oneline | wc -l
</code></pre></td></tr></table></div></div><p>添加或修改的代码行数：</p><div class=highlight><div class=chroma><table class=lntable><tr><td class=lntd><pre class=chroma><code><span class=lnt>1
</span></code></pre></td><td class=lntd><pre class=chroma><code class=language-fallback data-lang=fallback>git log --stat|perl -ne &#39;END { print $c } $c += $1 if /(\d+) insertions/;&#39;
</code></pre></td></tr></table></div></div><h2 id=git-reset---hard-head后显示more>git reset &ndash;hard HEAD^后显示more?</h2><p>如果在cmd窗口中输入<code>git reset --hard HEAD^</code>会显示<code>more?</code>，原因是<code>^</code>在cmd窗口中代表换行符，因此这里会通过回显<code>more?</code>来询问你是否还需要输入更多命令。</p><p>解决方法有如下几种：</p><ul><li>加引号：<code>git reset --hard "HEAD^"</code></li><li>加一个<code>^</code>进行转义：<code>git reset --hard HEAD^^</code></li><li>换成<code>~</code>：<code>git reset --hard HEAD~</code> 或者 <code>git reset --hard HEAD~1</code></li></ul><p><code>~</code>后面的数字表示回退几次提交，默认是一次。</p><p>如果使用<code>git bash</code>或者<code>powershell</code>则不会出现该问题。</p><h2 id=参考链接>参考链接</h2><ul><li><a href=https://my.oschina.net/longyuan/blog/521098 target=_blank rel="noopener noreffer">.gitignore 规则写法 - 在已忽略文件夹中不忽略指定文件、文件夹【注意项】</a></li><li><a href=https://blog.csdn.net/zhangjs0322/article/details/37658669 target=_blank rel="noopener noreffer">.gitignore无效，不能过滤某些文件</a></li><li><a href=https://blog.csdn.net/songtaiwu/article/details/79447572 target=_blank rel="noopener noreffer">git rm - - cached filename</a></li><li><a href=https://segmentfault.com/q/1010000000430426 target=_blank rel="noopener noreffer">git忽略已经被提交的文件</a></li><li><a href=https://blog.csdn.net/m0_37402140/article/details/72801372 target=_blank rel="noopener noreffer">如何去解决fatal: refusing to merge unrelated histories</a></li><li><a href=https://segmentfault.com/q/1010000002477106 target=_blank rel="noopener noreffer">git merge &ndash;no-ff是什么意思</a></li><li><a href=https://www.jianshu.com/p/450cd21b36a4 target=_blank rel="noopener noreffer">关于git提示“warning: LF will be replaced by CRLF”终极解答</a></li><li><a href=https://blog.csdn.net/carterslam/article/details/81162463 target=_blank rel="noopener noreffer">用git统计代码提交行数</a></li><li><a href=https://blog.csdn.net/qq_32623363/article/details/78968077 target=_blank rel="noopener noreffer">git reset &ndash;hard HEAD^后显示more?的解决方案</a></li></ul><div class=post-reward><input type=checkbox name=reward id=reward hidden>
<label class=reward-button for=reward>赞赏支持</label><div class=qr-code><label class=qr-code-image for=reward><img class=image src=https://cdn.jsdelivr.net/gh/lewky/lewky.github.io@master/images/common/wechat.png>
<span>微信打赏</span></label>
<label class=qr-code-image for=reward><img class=image src=https://cdn.jsdelivr.net/gh/lewky/lewky.github.io@master/images/common/alipay.png>
<span>支付宝打赏</span></label></div></div></div><div class=post-footer id=post-footer><div class=post-info><div class=post-info-line><div class=post-info-mod><span>更新于 2021-12-28</span></div><div class=post-info-license><span><a rel="license external nofollow noopener noreffer" href=https://creativecommons.org/licenses/by-nc/4.0/ target=_blank>CC BY-NC 4.0</a></span></div></div><div class=post-info-line><div class=post-info-md><span><a class=link-to-markdown href=/posts/git-issues/index.md target=_blank>阅读原始文档</a></span></div><div class=post-info-share><span><a href=javascript:void(0); title="分享到 Twitter" data-sharer=twitter data-url=https://lewky.cn/posts/git-issues/ data-title=Git问题汇总 data-hashtags=Git,版本控制工具,工作记录><i class="fab fa-twitter fa-fw"></i></a><a href=javascript:void(0); title="分享到 Facebook" data-sharer=facebook data-url=https://lewky.cn/posts/git-issues/ data-hashtag=Git><i class="fab fa-facebook-square fa-fw"></i></a><a href=javascript:void(0); title="分享到 Hacker News" data-sharer=hackernews data-url=https://lewky.cn/posts/git-issues/ data-title=Git问题汇总><i class="fab fa-hacker-news fa-fw"></i></a><a href=javascript:void(0); title="分享到 Line" data-sharer=line data-url=https://lewky.cn/posts/git-issues/ data-title=Git问题汇总><i data-svg-src=https://cdn.jsdelivr.net/npm/simple-icons@2.14.0/icons/line.svg></i></a><a href=javascript:void(0); title="分享到 微博" data-sharer=weibo data-url=https://lewky.cn/posts/git-issues/ data-title=Git问题汇总><i class="fab fa-weibo fa-fw"></i></a></span></div></div></div><div class=post-info-more><section class=post-tags><i class="fas fa-tags fa-fw"></i>&nbsp;<a href=/tags/git/>Git</a>,&nbsp;<a href=/tags/%E7%89%88%E6%9C%AC%E6%8E%A7%E5%88%B6%E5%B7%A5%E5%85%B7/>版本控制工具</a>,&nbsp;<a href=/tags/%E5%B7%A5%E4%BD%9C%E8%AE%B0%E5%BD%95/>工作记录</a></section><section><span><a href=javascript:void(0); onclick=window.history.back();>返回</a></span>&nbsp;|&nbsp;<span><a href=/>主页</a></span></section></div><div class=post-nav><a href=/posts/8dc44b45.html/ class=prev rel=prev title="Log4j2 - 动态生成Appender"><i class="fas fa-angle-left fa-fw"></i>Log4j2 - 动态生成Appender</a>
<a href=/posts/f0ce18c5.html/ class=next rel=next title=IDE工具、文本编辑器的列块编辑模式>IDE工具、文本编辑器的列块编辑模式<i class="fas fa-angle-right fa-fw"></i></a></div></div><div id=comments><div id=waline></div><script src=https://cdn.jsdelivr.net/npm/@waline/client/dist/Waline.min.js></script><script>new Waline({el:'#waline',meta:["nick","mail","link"],requiredMeta:["nick","mail"],login:"force",placeholder:"为防恶意灌水攻击，评论前需注册并登录，望见谅~",serverURL:"https://comment.lewky.cn/",avatarCDN:"https://sdn.geekzu.org/avatar/",pageSize:20,avatar:"retro",lang:"zh-CN",visitor:true,highlight:true,uploadImage:false,emoji:['https:\/\/cdn.jsdelivr.net\/gh\/lewky\/lewky.github.io@master/images/emoji/嘉然今天吃什么','https:\/\/cdn.jsdelivr.net\/gh\/lewky\/lewky.github.io@master/images/emoji/大航海嘉然','https:\/\/cdn.jsdelivr.net\/gh\/lewky\/lewky.github.io@master/images/emoji/向晚大魔王','https:\/\/cdn.jsdelivr.net\/gh\/lewky\/lewky.github.io@master/images/emoji/贝拉kira','https:\/\/cdn.jsdelivr.net\/gh\/lewky\/lewky.github.io@master/images/emoji/珈乐Carol','https:\/\/cdn.jsdelivr.net\/gh\/lewky\/lewky.github.io@master/images/emoji/乃琳Queen','https:\/\/cdn.jsdelivr.net\/gh\/lewky\/lewky.github.io@master/images/emoji/EveOneCat','https://cdn.jsdelivr.net/gh/walinejs/emojis@1.0.0/weibo','https:\/\/cdn.jsdelivr.net\/gh\/lewky\/lewky.github.io@master/images/emoji/滑稽','https:\/\/cdn.jsdelivr.net\/gh\/lewky\/lewky.github.io@master/images/emoji/default']});</script></div></article></div></main><footer class=footer><div class=footer-container><div class=footer-line><span id=run-time></span>|
<a href=http://rssblog.vercel.app/ target=_blank rel=noopener title=RSSBlog><i class="fas fa-fw fa-inbox"></i>&nbsp;RSSBlog</a></div><div class=footer-line><i class="far fa-copyright fa-fw"></i><span itemprop=copyrightYear>2018 - 2022</span><span class=author itemprop=copyrightHolder>&nbsp;<a href=/ target=_blank>雨临Lewis</a></span>&nbsp;|&nbsp;<span class=license><a rel="license external nofollow noopener noreffer" href=https://creativecommons.org/licenses/by-nc/4.0/ target=_blank>CC BY-NC 4.0</a></span><span class=icp-splitter>&nbsp;|&nbsp;</span><br class=icp-br><span class=icp><a target=_blank href=http://www.beian.miit.gov.cn/ style=font-weight:700>粤ICP备19103822</a></span></div></div></footer></div><div id=fixed-buttons><a href=# id=back-to-top class=fixed-button title=回到顶部><i class="fas fa-arrow-up fa-fw"></i></a><a href=# id=view-comments class=fixed-button title=查看评论><i class="fas fa-comment fa-fw"></i></a></div><div class=sidebar_wo><div id=leimu><img src=https://cdn.jsdelivr.net/gh/lewky/lewky.github.io@master/images/b2t/leimuA.png alt=雷姆 onmouseover="this.src='https:\/\/cdn.jsdelivr.net\/gh\/lewky\/lewky.github.io@master/images/b2t/leimuB.png'" onmouseout="this.src='https:\/\/cdn.jsdelivr.net\/gh\/lewky\/lewky.github.io@master/images/b2t/leimuA.png'" title=回到顶部></div><div class=sidebar_wo id=lamu><img src=https://cdn.jsdelivr.net/gh/lewky/lewky.github.io@master/images/b2t/lamuA.png alt=雷姆 onmouseover="this.src='https:\/\/cdn.jsdelivr.net\/gh\/lewky\/lewky.github.io@master/images/b2t/lamuB.png'" onmouseout="this.src='https:\/\/cdn.jsdelivr.net\/gh\/lewky\/lewky.github.io@master/images/b2t/lamuA.png'" title=回到底部></div></div><link rel=stylesheet href=https://cdn.jsdelivr.net/npm/lightgallery.js@1.2.0/dist/css/lightgallery.min.css><script type=text/javascript src=https://cdn.jsdelivr.net/npm/smooth-scroll@16.1.3/dist/smooth-scroll.min.js></script><script type=text/javascript src=https://cdn.jsdelivr.net/npm/lazysizes@5.2.2/lazysizes.min.js></script><script type=text/javascript src=https://cdn.jsdelivr.net/npm/lightgallery.js@1.2.0/dist/js/lightgallery.min.js></script><script type=text/javascript src=https://cdn.jsdelivr.net/npm/lg-thumbnail.js@1.2.0/dist/lg-thumbnail.min.js></script><script type=text/javascript src=https://cdn.jsdelivr.net/npm/lg-zoom.js@1.2.0/dist/lg-zoom.min.js></script><script type=text/javascript src=https://cdn.jsdelivr.net/npm/clipboard@2.0.6/dist/clipboard.min.js></script><script type=text/javascript src=https://cdn.jsdelivr.net/npm/sharer.js@0.4.0/sharer.min.js></script><script type=text/javascript>window.config={"code":{"copyTitle":"复制到剪贴板","maxShownLines":30},"comment":{},"lightGallery":{"actualSize":false,"exThumbImage":"data-thumbnail","hideBarsDelay":2000,"selector":".lightgallery","speed":400,"thumbContHeight":80,"thumbWidth":80,"thumbnail":true}};</script><script type=text/javascript src=/js/theme.min.js></script><script type=text/javascript src=https://cdn.jsdelivr.net/npm/jquery@2.1.3/dist/jquery.min.js></script><script type=text/javascript src=https://cdn.jsdelivr.net/npm/jquery-backstretch@2.1.18/jquery.backstretch.min.js></script><script>var $cdnPrefix="https://cdn.jsdelivr.net/gh/lewky/lewky.github.io@master";</script><script type=text/javascript src=/js/custom.js></script><script>var _hmt=_hmt||[];(function(){var hm=document.createElement("script");hm.src="https://hm.baidu.com/hm.js?6f278ed0fdb01edb3b1e7398379e5432";var s=document.getElementsByTagName("script")[0];s.parentNode.insertBefore(hm,s);})();</script></body></html>